Inherent in many communication protocols is the concept that when a message is sent to a device, the sender is expected to provide a response within a reasonable period of time. The device receiving the message will traditionally decode the message and generate a reply, associating the reply with the incoming message to enable the sender to associate the reply with the original message.
When interfacing with networks of differing technologies, devices in one network inherently cannot communicate or understand the behavior of devices in the other network. Interworking between such disparate networks may be facilitated using a gateway between the networks. The gateway is typically configured to facilitate communications between networks, but typically does not process the information being communicated. The gateway is normally configured to provide a transaction manager for each supported protocol. The transaction manager is generally dedicated to specific networking applications, and thus, normally provides a very rigid response for predetermined inputs. Given the accelerated evolution of the number of services and types of messages that a gateway must handle, rigid, application-specific transaction managers slow development and increase the cost of networks by requiring application-specific configuration.
Thus, there is a need for a general-purpose transaction manager that is adaptive to the needs of the respective networks and the interworking therebetween. Further, there is a need for a transaction manager capable of dynamically reacting to the data associated with the signaling and not merely the type of signaling between the networks. The transaction manager should be responsive to a variety of parameters associated with the data wherein the parameters may be derived from an incoming message, the gateway, either of the networks, or a combination thereof.